这个程序看不懂啊``麻烦那为解释下`谢谢啊``希望详细点啊!

来源:百度知道 编辑:UC知道 时间:2024/06/05 07:14:52
#include <stdio.h>
f(int b[],int n)
{ int i,r;
r=1;
for(i=0;i<=n;i++) r=r*b[i];
return r;
}
main()
{ int x,a[]={2,3,4,5,6,7,8,9};
x=f(a,3);
printf("%d\n",x);
}

整个过程如下:
主函数中:
定义了一个数组,存放了8个数字。调用子函数f()。将子函数f()返回值打印出来。
子函数f()中:
接收了数组和数组大小两个参数。定义了i和r两个int型变量。循环n次,即循环数组大小次数,用变量r将数组各个元素的乘积接收,然后返回给主函数。
#include <stdio.h>
f(int b[],int n)
{ int i,r;
r=1;初始值
for(i=0;i<=n;i++) r=r*b[i]; 将数组各个元素相乘
return r;
}
main()
{ int x,a[]={2,3,4,5,6,7,8,9}; 定义数组
x=f(a,3); 调用子函数
printf("%d\n",x); 打印结果
}

数组a[]的从第二个开始累乘,累乘3个,就是a[1]*a[2]*a[3]了

这个程序有两个函数,一个字函数f(int b[],int n),一个主函数main()。

在字函数f(int b[],int n)里,它接受两个参数,第一个是一个数组,第二个参数是一个变量,然后再函数中进行N+1次循环,也就是把数组的前N+1个元素相乘,最后返回结果。

在主函数中,定义了一个变量X用来接收子函数的返回值,一个数组a,初始化了8个元素,然后将该数组和数字3传给子函数f,也就是说在子函数中要将前3+1=4个元素相乘,返回乘积结果给x,最后打印出来。